import pygame;
from pygame import display
from pygame import image

import plane_sprites
from plane_sprites import *;


#1、英雄的初始位置
hero_reck = pygame.Rect(150,300,102,126);

pygame.init();

#编写游戏的代码
print("游戏的代码。。。")
#在init方法后面
resolution = (480,700); #设置屏幕的高度和宽度
surface_hero = display.set_mode(resolution); #创建游戏的窗口

#绘制背景图像
bg = image.load("../images/background.png");
#screen 调用blit方法来绘制对象
surface_hero.blit(bg,(0,0));


"""
1、加载英雄图片
2、将英雄飞机绘制在屏幕的(200,500)位置
3、调用屏幕更新显示飞机图像
"""

hero_img = image.load("../images/me1.png")
#把应用绘制的位置
surface_hero.blit(hero_img,(150,300));

#统一的绘制
display.update();

#创建时钟对象
clock = pygame.time.Clock();

#创建敌机精灵
emeny = GameSprite("./images/enemy1.png");
emeny1 = GameSprite("./images/enemy1.png",2);
#创建精灵组
emeny_group = pygame.sprite.Group(emeny,emeny1);

#无限循环也叫游戏循环 --->意味着游戏真正开始
while True:
    #用来控制循环体内部代码执行的频率，这里是每秒执行60次。
    clock.tick(60);




    #获取事件
    event_list = pygame.event.get();
    if len(event_list) > 0 :
        #事件监听
        for event in event_list:
            if event.type == pygame.QUIT:
                print("退出游戏");
                pygame.quit();   #卸载所有的模块
                #退出程序
                exit();

    #2、修改飞机的位置
    hero_reck.y -= 1;
    #判断飞机的位置
    if hero_reck.y <= 0:
        hero_reck.y = 700;
    #3、重新的绘制背景图片
    surface_hero.blit(bg, (0, 0));

    #让精灵组调用两个方法
    emeny_group.draw(surface_hero);
    emeny_group.update();

    #4、绘制英雄的位置
    surface_hero.blit(hero_img,hero_reck);





    #5、更新位置
    display.update();


#卸载pygame的所有组件
pygame.quit();